home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Cream of the Crop 20
/
Cream of the Crop 20 (Terry Blount) (1996).iso
/
doom
/
cddk9605.zip
/
HEADERS.ARJ
/
RA.INT
< prev
next >
Wrap
Text File
|
1996-05-17
|
8KB
|
198 lines
{ ───────────────────────────────────────────────────────────────────────── }
{ Name : RA.PAS }
{ Description : Minimal RemoteAccess 2.x Support }
{ Requires : STRUCT.202 or STRUCT.250 }
{ ───────────────────────────────────────────────────────────────────────── }
{ ■■■ WARNING ■■■
STRUCT.202 and STRUCT.250 are copyrighted products of Andrew Milner and
Wantree development. These files are not included with Concerto, but
can be obtained from Erebus BBS, Wantree Development, or any official
RemoteAccess support site. }
{ $DEFINE RA202} { Delete the first space to force support for RA 2.02. }
UNIT RA;
{$B-} { . . . . . . . . . . . . . . . . . . . . Shortcut boolean evaluation }
{$F+} { . . . . . . . . . . . . . . . . . . . . Force far calls for safety }
{$I-} { . . . . . . . . . . . . . . . . . . . Disable input/output checking }
{$O+} { . . . . . . . . . . . . . . . . . . Allow this unit to be overlayed }
{$Q-} { . . . . . . . . . . . . . . Do not generate overflow-checking code }
{$R-} { . . . . . . . . . . . . . . . . Do not generate range-checking code }
{$S-} { . . . . . . . . . . . . . . . . Do not generate stack-checking code }
{$X+} { . . . . . . . . . . . Extended syntax for pChars and function calls }
INTERFACE
USES
Objects;
{$IFDEF RA202}
{$I STRUCT.202}
{$ELSE}
{$I STRUCT.250}
{$ENDIF}
CONST
{ EVENTrecord.Status (EVENTS.RA is generally located in the system dir. }
EventDeleted = $00; { . . . . . . . . . . The event has been deleted }
EventEnabled = $01; { . . . . . . . . The event is currently active }
EventDisabled = $02; { . . . . . The event is not active at this time }
{ FILESHDRrecord.Attrib (\RA\FILEBASE\HDR\FDB*.HDR) }
FileDeleted = $01; { -------1 } { . . . . . . . . Marked as deleted }
FileUnlisted = $02; { ------1- } { . . . . . . . . . . . . Unlisted }
FileFree = $04; { -----1-- } { . . Does not affect ratio & cost }
FileUnavailable = $08; { ----1--- } { . . . . . . Do not allow download }
FileLocked = $10; { ---1---- } { . . . . . . . . Do not kill file }
FileMissing = $20; { --1----- } { . . . . . . . Missing or offline }
FileNoTime = $40; { -1------ } { . . . . . . No time restrictions }
{ LASTCALLrecord.Attribyte (LASTCALL.BBS is in the system directory) }
LastCallHidden = $01; { -------1 } { . . . . . . . . . Hidden account }
{ MNUrecord.TermAttrib }
MenuANSI = $01; { -------1 } { . . . . . . . . . . ANSI required }
MenuAVATAR = $02; { ------1- } { . . . . . . . . . AVATAR required }
MenuRIP = $04; { -----1-- } { . . . . . . . . . . RIP required }
{ MESSAGErecord.Attribute (MESSAGES.RA is in the system directory) }
MsgEnableEchoInfo = $01; { -------1 } { . . . Write echomail information }
MsgCombined = $02; { ------1- } { . . . . . Permit combined access }
MsgAttaches = $04; { -----1-- } { . . . . . . Permit file attaches }
MsgAliases = $08; { ----1--- } { . . . . . . . . . Permit aliases }
MsgSoftCRs = $10; { ---1---- } { . . Treat soft CRs as characters }
MsgForceHandles = $20; { --1----- } { . . . . Force posting with handle }
MsgDeletes = $40; { -1------ } { . Allow users to delete messages }
MsgJAM = $80; { 1------- } { . . . . . . . Area is a JAM area }
{ MESSAGErecord.Attribute2 (MESSAGES.RA is in the system directory) }
MsgAllGroups = $01; { -------1 } { . . Include in all message groups }
{ USERSrecord.Attribute (USERS.BBS is in the message-base directory) }
User1Deleted = $01; { -------1 } { . . . . . . . . . . . . . Deleted }
User1ClrScr = $02; { ------1- } { . . . . . . Screen clearing codes }
User1MorePrompt = $04; { -----1-- } { . . . . . . . . . Screen pausing }
User1ANSI = $08; { ----1--- } { . . . . . . . . ANSI capabilities }
User1NoKill = $10; { ---1---- } { . . . . . . . . . . Do not delete }
User1XferPriority = $20; { --1----- } { . . . . . . . . Transfer priority }
User1FSEditor = $40; { -1------ } { . . . . . . . Full-screen editor }
User1Quiet = $80; { 1------- } { . . . . . . . . . Do not disturb }
{ USERSrecord.Attribute2 (USERS.BBS is in the message-base directory) }
User2HotKeys = $01; { -------1 } { . . . . . . . . . . . . Hot keys }
User2AVATAR = $02; { ------1- } { . . . . . . . . . . . . AVATAR/0 }
User2FSViewer = $04; { -----1-- } { . . . Full-screen message viewer }
User2Hidden = $08; { ----1--- } { . . . . . . Hidden from user list }
User2PagePriority = $10; { ---1---- } { . . . . . . . . . Paging priority }
User2NoEchomail = $20; { --1----- } { . . . No echomail in mailbox scan }
User2Guest = $40; { -1------ } { . . . . . . . . . . Guest account }
User2PostBill = $80; { 1------- } { . . . . . . Post-billing enabled }
{ USERSrecord.Attribute3 (USERS.BBS is in the message-base directory) }
User3ScanSelected = $01; { -------1 } { . . . . Scan selected areas only }
{ USERONrecord.Status (USERON.BBS is in the system directory) }
UserOnBrowsing = 0; { . . . . . . . Browsing in a menu }
UserOnTransfer = 1; { . . . . . . . Transfering a file }
UserOnMessage = 2; { . . . . Reading/posting messages }
UserOnDoor = 3; { . . . . . . Door/external utility }
UserOnChat = 4; { . . . . . Chatting with the sysop }
UserOnQuestion = 5; { . . . . . . . . . . Questionaire }
UserOnRTC = 6; { . . . . . . . Run-Time Conference }
UserOnNewUser = 7; { . . . . . . . . . New user logon }
UserOnStatDesc = 255; { . . . . . . . . . Display StatSec }
{ USERONrecord.Attribute (USERON.BBS is in the system directory) }
UserOnHidden = $01; { -------1 } { . . . . Do not show in user-lists }
UserOnWantsChat = $02; { ------1- } { . Has previously paged the sysop }
UserOnReserved = $04; { -----1-- } { . . . . Reserved by RemoteAccess }
UserOnDoNotDisturb= $08; { ----1--- } { . . . Do not send online messages }
UserOnReady = $40; { -1------ } { . . . . . . . . . . . . . . Ready }
TYPE
{ Support Pointers }
pLastCallRecord = ^LastCallRecord;
pRAConfig = ^ConfigRecord;
pRAExitInfo = ^ExitInfoRecord;
pRASysInfo = ^SysInfoRecord;
CONST
RAEnvVar : pChar = NIL; { Pointer to RA enviroment variable }
RAConfigPath : pChar = NIL; { Full path to CONFIG.RA }
RALastCallPath : pChar = NIL; { Full path to LASTCALL.BBS }
RASysInfoPath : pChar = NIL; { Full path to SYSINFO.BBS }
RAUserBasePath : pChar = NIL; { Full path to USERS.BBS }
RAUserOnPath : pChar = NIL; { Full path to USERON.BBS }
VAR { SysInfo Fields }
RALastCaller : MsgToIdxRecord;
RATotalCalls : LongInt;
{$IFNDEF RA202}
RALastHandle : MsgToIdxRecord;
{$ENDIF}
PROCEDURE LoadRAConfig(VAR p:pRAConfig);
{
PURPOSE : Loads CONFIG.RA.
NOTES : Automatically allocates memory if the pointer is NIL. Be sure
to check for this.
SEE ALSO : LoadRASysInfo
}
PROCEDURE LoadRASysInfo(VAR SysInfo:SysInfoRecord);
{
PURPOSE : Loads SYSINFO.BBS from the system directory.
SEE ALSO : LoadRAConfig
}
PROCEDURE RegisterRASysInfo;
{
PURPOSE : Registers the SYSINFO.BBS information with Concerto.
NOTES : The fields of the SYSINFO.BBS record are saved as separate